﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ServiceModel.Channels;
using System.ComponentModel;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.ClienteWs;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.EstabelecimentoWS;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.DebitoWs;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.UtilidadesWs;


namespace PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.GUI
{
    public partial class EstabelecimentoDebitarBebidaCliente : System.Web.UI.Page
    {
        PubClub_Cliente_WS webServiceCliente = new PubClub_Cliente_WS();
        PubClub_Estabelecimento_WS webServiceEstabelecimento = new PubClub_Estabelecimento_WS();

        ObjetoCliente cliente = new ObjetoCliente();
        ObjetoEstabelecimento estabelecimento = new ObjetoEstabelecimento();
        int idCliente;



        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["Estabelecimento"] == null)
            {
                Response.Redirect("Login.aspx?Logout=2");
            }
            else
            {
                estabelecimento = webServiceEstabelecimento.GetEstabelecimento(Convert.ToInt32(Session["Estabelecimento"]));
            }

            if (Request.QueryString["Sucesso"] == "1")
            {
                LabelAviso.Text = "Pedido realizado com sucesso!";
                LabelAviso.ForeColor = System.Drawing.Color.Green;
                LabelAviso.Visible = true;
            }



        }

        protected void ButtonBuscarCliente_Click(object sender, EventArgs e)
        {
            LabelAviso.Visible = false;

            if (TextBoxCPfCliente.Text.Trim().Equals(""))
            {
                LabelAviso.Text = "Campo não pode ser vazio.";
                LabelAviso.Visible = true;
                LabelNomeDoCliente.Visible = false;
                LabelClienteEncontrado.Visible = false;
                HyperLinkProximo.Visible = false;
                TextBoxCPfCliente.Focus();
                return;
            }

            else
            {
                try
                {
                    Convert.ToInt64(TextBoxCPfCliente.Text.Trim());

                }
                catch (FormatException)
                {

                    LabelAviso.Text = "Informe apenas números.";
                    LabelAviso.Visible = true;
                    TextBoxCPfCliente.Focus();
                    LabelNomeDoCliente.Visible = false;
                    LabelClienteEncontrado.Visible = false;
                    HyperLinkProximo.Visible = false;
                    return;
                }

                BindingList<ObjetoCliente> listaCliente = new BindingList<ObjetoCliente>(webServiceCliente.SearchCliente(TextBoxCPfCliente.Text.Trim()));

                if (listaCliente.Count == 0)
                {
                    LabelAviso.Text = "Nenhum cliente encontrado.";
                    LabelAviso.Visible = true;
                    LabelNomeDoCliente.Visible = false;
                    LabelClienteEncontrado.Visible = false;
                    HyperLinkProximo.Visible = false;
                    TextBoxCPfCliente.Focus();
                    return;
                }
                else
                {
                    cliente = listaCliente[0];
                    LabelClienteEncontrado.Visible = true;
                    LabelNomeDoCliente.Text = cliente.Nome.ToUpper();
                    LabelNomeDoCliente.ForeColor = System.Drawing.Color.Blue;
                    LabelNomeDoCliente.Visible = true;
                    HyperLinkProximo.Visible = true;
                    idCliente = cliente.ClienteId;
                    HyperLinkProximo.NavigateUrl = "~/GUI/EstabelecimentoDebitarBebidaClientePasso2.aspx?ClienteId=" + idCliente;
                }

            }

        }

    }
}